Fix #316087.
authorKristian Rietveld <kris@gtk.org>
Fri, 11 Jul 2008 14:17:49 +0000 (14:17 +0000)
committerKristian Rietveld <kristian@src.gnome.org>
Fri, 11 Jul 2008 14:17:49 +0000 (14:17 +0000)
commit2cc1247433a1e4e480a09b31f7875ba253601ae8
tree19bb8598cbad70c7d55e8b3144e1b799a344e8f0
parent1d510a9e84e829f838d4c900626c3c575d637c11
Fix #316087.

2008-07-11  Kristian Rietveld  <kris@gtk.org>

Bug 316087 - Resizing columns is chaotic

* gtk/gtktreeprivate.h: add new member fields.

* gtk/gtktreeview.c (gtk_tree_view_init), (validate_row): set post
validation flag,
(gtk_tree_view_size_allocate_columns): rework the size allocation
mechanism to only recalculate the expand values if the width of the
widget, content or the column configuration has changed,
(gtk_tree_view_size_allocate): move call to size_allocate_columns()
to before the adjustment updates so the proper width is used after
we updated it,
(gtk_tree_view_button_press), (gtk_tree_view_motion_resize_column):
use the column width minus the expand value for the resized width,
(gtk_tree_view_move_column_after): update call to
gtk_tree_view_size_allocate_columns().

* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_expand): set use
resized width to FALSE.

* tests/Makefile.am:
* tests/testtreecolumnsizing.c: new interactive test program
for testing column resizing with different column configurations.

svn path=/trunk/; revision=20818
ChangeLog
gtk/gtktreeprivate.h
gtk/gtktreeview.c
gtk/gtktreeviewcolumn.c
tests/Makefile.am
tests/testtreecolumnsizing.c [new file with mode: 0644]